[#ftl]
[@define "agile._i18nTemplateMixin"]
	constructor:function(){		
		aspect.after(this,"postMixInProperties",lang.hitch(this,"_i18n"));	
	}
	,_i18n:function(){
		// summary:
		//		Replace all place holders in the templateString
		//		1) {i18n_*} replaced by the i18n text from message resource 
		//		2) {this_*} replaced by the property value of the widget		
		if(this.templateString){
			this.templateString = lang.replace(this.templateString,lang.hitch(agile.i18nValues(this.templateString,this),function(_,key){				
				return this[key]?this[key]:key;				
			}));
		}
	}
[/@]
